home *** CD-ROM | disk | FTP | other *** search
/ Tripas 5 / TRIPAS 005.iso / Wos.EXE / base / global / universal_script.scr < prev    next >
Encoding:
Text File  |  1999-02-24  |  15.7 KB  |  487 lines

  1. // ------------------------------------------
  2. // ------------------------------------------
  3. // Universal script for all levels
  4. // ------------------------------------------
  5. // ------------------------------------------
  6.  
  7. // ------------------------------------------
  8. // Clear out the player's inventory
  9. // ------------------------------------------
  10. ClearInventory:
  11. *1 take BlueCard 1000
  12. *1 take OrangeCard 1000
  13. *1 take YellowCard 1000
  14. *1 take GreenCard 1000
  15. *1 take KeyRing 1000
  16. *1 take ScubaGear 1000
  17. *1 take u4sample 1000
  18. *1 take IdentCard 1000
  19. *1 take Hand 1000
  20. end
  21.  
  22. // ------------------------------------------
  23. // Start a player with a new episode
  24. // ------------------------------------------
  25. NewEpisode:
  26. *1 health 100
  27. *1 take all
  28. *1 take Bullet10mm 1000
  29. *1 take Bullet50mm 1000
  30. *1 take BulletPulse 1000
  31. *1 take BulletSniper 1000
  32. *1 take Rockets 1000
  33. *1 take Spears 1000
  34. *1 take ShotgunClip 1000
  35. *1 take SpiderMines 1000
  36. *1 take FlakJacket 200
  37. *1 take FlakPants 200
  38. *1 take RiotHelmet 200
  39. *1 take BluePrints 1000
  40. *1 take ComLink 1000
  41. *1 take GlowStick 1000
  42. *1 take MoneyBag 1000
  43. *1 take PassCode 1000
  44. *1 take Chemsuit 1000
  45. *1 take silencer 1000
  46. *1 take Hand 1000
  47. *1 give fists
  48. *1 give Magnum
  49. end
  50.  
  51. // ------------------------------------------
  52. // Mission Status Computer 
  53. // ------------------------------------------
  54. StatusUpdated:
  55.   crucialdialog "i_computer" "Mission Status Updated (TAB)" "mission_comp/update.wav" 1 5
  56.   waitForSound "mission_comp/update.wav" 1
  57. end
  58.  
  59. PObjectiveComplete:
  60.   music success
  61.   crucialdialog "i_computer" "Primary Objective Completed" "mission_comp/mix1ima.wav" 1 5
  62.   waitForSound "mission_comp/mix1ima.wav" 1
  63. end
  64.  
  65. SObjectiveComplete:
  66.   music success
  67.   crucialdialog "i_computer" "Secondary Objective Completed" "mission_comp/mix1ima.wav" 1 5
  68.   waitForSound "mission_comp/mix1ima.wav" 1
  69. end
  70.  
  71. PObjectiveFailed:
  72.   music failure
  73.   crucialdialog "i_computer" "Primary Objective Failed" "mission_comp/mix3ima.wav" 1 5
  74.   waitForSound "mission_comp/mix3ima.wav" 1
  75. end
  76.  
  77. SObjectiveFailed: 
  78.   music failure
  79.   crucialdialog "i_computer" "Secondary Objective Failed" "mission_comp/mix3ima.wav" 1 5
  80.   waitForSound "mission_comp/mix3ima.wav" 1
  81. end
  82.  
  83. // ------------------------------------------
  84. // Blade finds a secret
  85. // ------------------------------------------
  86. secret: 
  87.   local.PrintString string "Secrets Found: "
  88.   local.PrintString appendint level.found_secrets
  89.   local.PrintString append "/"
  90.   local.PrintString appendint level.total_secrets
  91.   crucialdialog "i_computer" local.PrintString "mission_comp/mix1ima.wav" 1 5
  92.   waitForSound "mission_comp/secret.wav" 1
  93. end
  94.  
  95. // ------------------------------------------
  96. // Blade finds a non needed item
  97. // ------------------------------------------
  98. blade_no_reason:
  99.   //Blade says "Hmm, no reason to go in there." when he finds a locked door
  100.   dialog "i_blade" "Hmm, no reason to go in there." "dialog/general/blade/noreas.wav" 1 5
  101. end
  102.  
  103. // ---------------------------------------------------------------
  104. // Blade tries to use an item that needs a keycard he doesn't have
  105. // ---------------------------------------------------------------
  106. need_yellow_card:
  107. dialogsound environment/computer/beeps/affirm3.wav
  108. end
  109.  
  110. need_orange_card:
  111. dialogsound environment/computer/beeps/affirm3.wav
  112. end
  113.  
  114. need_green_card:
  115. dialogsound environment/computer/beeps/affirm3.wav
  116. end
  117.  
  118. need_blue_card:
  119. dialogsound environment/computer/beeps/affirm3.wav
  120. end
  121.  
  122.  
  123. // ------------------------------------------
  124. // Blade finds a locked door
  125. // ------------------------------------------
  126. locked_door:
  127.   //Blade says "Another locked door!" when he finds a locked door
  128. dialogsound "dialog/general/blade/nlck.wav"
  129. end
  130.  
  131. // ------------------------------------------
  132. // X-Files Type Intro Screen
  133. // ------------------------------------------
  134. XFilesScreen_Black:
  135.   freezeplayer
  136.   local.WaitTime = parm.WaitTime
  137.   local.TimeDate string parm.TimeDate
  138.   local.Location string parm.Location
  139.   local.Description string parm.Description
  140.   local.PrintString string "fullfill 0 0 0 1"
  141.   local.PrintString append "xl 8 yb 8 type 1 string \""
  142.   local.PrintString append local.TimeDate
  143.   local.PrintString append "\n"
  144.   local.PrintString append local.Location
  145.   local.PrintString append "\n"
  146.   local.PrintString append local.Description
  147.   local.PrintString append "\""
  148.   screenprint 3 "fullfill 0 0 0 1"
  149.   wait 1
  150.   screenprint local.WaitTime local.PrintString
  151.   local.WaitTime -= 1
  152.   wait local.WaitTime
  153.   releaseplayer
  154. end
  155.  
  156. XFilesScreen:
  157.   local.WaitTime = parm.WaitTime
  158.   local.TimeDate string parm.TimeDate
  159.   local.Location string parm.Location
  160.   local.Description string parm.Description
  161.   local.PrintString string "xl 8 yb 8 type 1 string \""
  162.   local.PrintString append local.TimeDate
  163.   local.PrintString append "\n"
  164.   local.PrintString append local.Location
  165.   local.PrintString append "\n"
  166.   local.PrintString append local.Description
  167.   local.PrintString append "\""
  168.   screenprint local.WaitTime local.PrintString
  169.   local.WaitTime -= 1
  170.   wait local.WaitTime
  171. end
  172.  
  173. // ------------------------------------------
  174. // Blade finds items
  175. // ------------------------------------------
  176. //this dialog is good for when Blade blows open a crate and finds guns/ammo, or any similar situation
  177.  
  178. blade_finds_item1:
  179.   //Blade says "Alright!"
  180. //  dialog "i_blade" "Alright!" "dialog/general/blade/Alright.wav" 1 5
  181. dialogsound "dialog/general/blade/Alright.wav"
  182. end
  183.  
  184. blade_finds_item2:
  185.   //Blade says "Come to Papa!"
  186. //  dialog "i_blade" "Come to Papa!" "dialog/general/blade/Papa.wav" 1 5
  187. dialogsound "dialog/general/blade/Papa.wav"
  188. end
  189.  
  190. blade_finds_item3:
  191.   //Blade says "Score!"
  192. //  dialog "i_blade" "Score!" "dialog/general/blade/Score.wav" 1 5
  193. dialogsound "dialog/general/blade/Score.wav"
  194. end
  195.  
  196. // Jc reacts to what Blade finds
  197. blade_finds_item4:
  198.   //JC says "Rock the Casbah!"
  199. //  dialog "i_jc" "Rock the Casbah!" "dialog/general/jc/Paydirt.wav" 1 5
  200. dialogsound "dialog/general/jc/Paydirt.wav"
  201. end
  202.  
  203. blade_finds_item5:
  204.   //JC says "Jackpot!"
  205. //  dialog "i_jc" "Jackpot!" "dialog/general/jc/jackpot.wav" 1 5
  206. dialogsound "dialog/general/jc/jackpot.wav"
  207. end
  208.  
  209. // ------------------------------------------
  210. // Blade dies and JC calls after him
  211. // ------------------------------------------
  212. blade_ponders_item1:
  213.   //Blade says "Hmmm!"
  214.   dialog "i_blade" "Hmmm!" "dialog/bank/blade/hmm.wav" 1 5
  215. end
  216.  
  217. blade_ponders_item2:
  218.   //Blade says "Hmmm, whatÆs that for?"
  219.   dialog "i_blade" "Hmmm, whatÆs that for?" "dialog/geotherm/blade/whatthat.wav" 1 5
  220. end
  221.  
  222. // ------------------------------------------
  223. // Blade dies and JC calls after him
  224. // ------------------------------------------
  225. jc_talks_blade_dies1:
  226.   // JC says "Blade!  Blade, talk to me!"
  227. //  dialog "i_jc" "Blade!  Blade, talk to me!" "dialog/general/jc/bldtlk.wav" 1 5
  228. dialogsound "dialog/general/jc/bldtlk.wav"
  229. end
  230.  
  231. jc_talks_blade_dies2:
  232.   // JC says "Blade...Blade, come in Blade...talk to me!"
  233. //  dialog "i_jc" "Blade...Blade, come in Blade...talk to me!" "dialog/general/jc/cmn2.wav" 1 5
  234. dialogsound "dialog/general/jc/cmn2.wav"
  235. end
  236.  
  237. jc_talks_blade_dies3:
  238.   // JC says "Blade?  Blade? Talk to me man!"
  239. //  dialog "i_jc" "Blade?  Blade? Talk to me man!" "dialog/chem/jc/talkme.wav" 1 5
  240. dialogsound "dialog/chem/jc/talkme.wav"
  241. end
  242.  
  243. jc_talks_blade_dies4:
  244.   // JC says "Blade is down!  Repeat Blade is down!  Get some backup in there now!" 
  245. //  dialog "i_jc" "Blade is down!  Repeat Blade is down!  Get some backup in there now!" "dialog/general/jc/blddw2.wav" 1 5
  246. dialogsound "dialog/general/jc/blddw2.wav"
  247.  
  248. end
  249.  
  250. // ------------------------------------------
  251. // Blade sees Cool Shit happen in level
  252. // ------------------------------------------
  253. Blade_reacts_2_coolshit1:
  254.   // Blade says "OH SHIT!"
  255. //  dialog "i_blade" "OH SHIT!" "dialog/abandoned/blade/ohsht1.wav" 1 5
  256. end
  257.  
  258. Blade_reacts_2_coolshit2:
  259.   // Blade says "Man, this is some pretty fubarÆed shit!"
  260. //  dialog "i_blade" "Man, this is some pretty fubarÆed shit!" "dialog/biomech/blade/fubar.wav" 1 5
  261. end
  262.  
  263. Blade_reacts_2_coolshit3:
  264.   // Blade says "What THE!"
  265. //  dialog "i_blade" "What THE!" "dialog/intro/blade/whtth2.wav" 1 5
  266. end
  267.  
  268. Blade_reacts_2_coolshit4:
  269.   // Blade says "Bring it on!"
  270. //  dialog "i_blade" "Bring it on!" "dialog/basehq/blade/bringon.wav" 1 5
  271. end
  272.  
  273. Blade_reacts_2_coolshit5:
  274.   // Blade says "ItÆs demolition time!"
  275.   dialog "i_blade" "ItÆs demolition time!" "dialog/hdocks/blade/demolit.wav" 1 5
  276. end
  277.  
  278. // ------------------------------------------
  279. // JC sees Cool Shit happen in level
  280. // ------------------------------------------
  281. JC_reacts_2_coolshit1:
  282.   // JC says "Cause a little havoc why donÆt you Blade!"
  283. //  dialog "i_jc" "Cause a little havoc why donÆt you Blade!" "dialog/chem/jc/havoc.wav" 1 5
  284. end
  285.  
  286. JC_reacts_2_coolshit2:
  287.   // JC says "SMOKINÆ!"
  288. //  dialog "i_jc" "SMOKINÆ!" "dialog/basehq/jc/smokin.wav" 1 5
  289. end
  290.  
  291. JC_reacts_2_coolshit3:
  292.   // JC says "Boss youÆre one bad-ass mother!"
  293. // dialog "i_jc" "Boss youÆre one bad-ass mother!" "dialog/basehq/jc/badass.WAV" 1 5
  294. end
  295.  
  296. JC_reacts_2_coolshit4:
  297.   // JC says "Damn Blade, youÆre tearing this place apart!"
  298.   dialog "i_jc" "Damn Blade, youÆre tearing this place apart!" "dialog/geotherm/jc/Tear.wav" 1 5
  299. end
  300.  
  301. JC_reacts_2_coolshit5:
  302.   // JC says "Give emÆ fifty CCÆs of Kick-ass bossman!"
  303. //  dialog "i_jc" "Give emÆ fifty CCÆs of Kick-ass bossman!" "dialog/hdocks/jc/50cc.wav" 1 5
  304. end
  305.  
  306. JC_reacts_2_coolshit6:
  307.   // JC says "TRASH IT! TRASH IT!! TRASH IT!"
  308. //  dialog "i_jc" "TRASH IT! TRASH IT!! TRASH IT!" "dialog/hdocks/jc/trash.wav" 1 5
  309. end
  310.  
  311. // ------------------------------------------
  312. // JC berates Blade for killing innocents
  313. // ------------------------------------------
  314. blade_kills_innocent1:
  315.   // JC says "What are you blind DON'T shoot them!"
  316. //  dialog "i_jc" "What are you blind DON'T shoot them!" "dialog/general/jc/blind.wav" 1 5
  317. dialogsound "dialog/general/jc/blind.wav"
  318. end
  319.  
  320. blade_kills_innocent2:
  321.   // JC says "Blade, what are doing? Those are friendlies!"
  322. //  dialog "i_jc" "Blade, what are doing? Those are friendlies!" "dialog/general/jc/friend1.wav" 1 5
  323. dialogsound "dialog/general/jc/friend1.wav"
  324. end
  325.  
  326. blade_kills_innocent3:
  327.   // JC says "HEY! Easy does it PSYCHO!"
  328. //  dialog "i_jc" "HEY! Easy does it PSYCHO!" "dialog/general/jc/psycho.wav" 1 5
  329. dialogsound "dialog/general/jc/psycho.wav"
  330. end
  331.  
  332. blade_kills_innocent4:
  333.   // JC says "BLADE! What are you doing?"
  334. //  dialog "i_jc" "BLADE! What are you doing?" "dialog/general/jc/whatdo.wav" 1 5
  335. dialogsound "dialog/general/jc/whatdo.wav"
  336. end
  337.  
  338. blade_kills_innocent5:
  339.   // JC says "DAMN BLADE! Watch out?"
  340. //  dialog "i_jc" "DAMN BLADE! Watch out?" "dialog/general/jc/watch6.wav" 1 5
  341. dialogsound "dialog/general/jc/watch6.wav"
  342. end
  343.  
  344. /////////////////////////////////////////////////////////////////////////////
  345. // smoothturn_thread:
  346. // Simulate a smooth moving turn for an object.
  347. // local.TurnTics = number of sub-turns to divide the motion into
  348. // parm.Object = script object to turn
  349. // parm.Radius = radius of the circle to turn on
  350. // parm.Angle = number of degrees to turn
  351. // parm.Speed = speed in units per sec to move
  352. // parm.Direction = [left/right] direction to turn
  353. // parm.YDistance = how far to move up or down while turning
  354. // parm.YDirection = [up/down/nop] tells if the object should slide on the Y
  355. // axis while turning.
  356. /////////////////////////////////////////////////////////////////////////////
  357. smoothturn_thread:
  358.   local.Pi = 3.1415926535
  359.   local.TurnTics = 50
  360.   local.Object string parm.Object
  361.   local.Angle = parm.Angle
  362.   local.Speed = parm.Speed
  363.   local.Counter = 0
  364.   local.TurnDirection string parm.Direction
  365.   local.YDistance = parm.YDistance
  366.   local.YDirection string parm.YDirection
  367.  
  368.   // Find the circumference
  369.   local.TicDistance = local.Pi
  370.   local.TicDistance *= 2
  371.   local.TicDistance *= parm.Radius
  372.  
  373.   // Find the ammount to divide the circumference by
  374.   local.AngleFactor = 360
  375.   local.AngleFactor /= local.Angle
  376.  
  377.   // Total distance in units the object will travel
  378.   local.TicDistance /= local.AngleFactor
  379.  
  380.   // We are givin the speed we wish the object to make the turn at, calculate the time
  381.   local.TicTime = local.TicDistance
  382.   local.TicTime /= local.Speed
  383.   local.TicTime /= local.TurnTics
  384.  
  385.   // Distance and angle the object should move/turn in each itteration
  386.   local.TicDistance /= local.TurnTics
  387.   local.YDistance /= local.TurnTics
  388.   local.TicAngle = local.Angle
  389.   local.TicAngle /= local.TurnTics
  390.  
  391.   // Turn the object
  392.   local.Object time local.TicTime
  393.  
  394. smoothturn_loop:
  395.   local.Object moveForward local.TicDistance
  396.  
  397.   local.TurnDirection ifstrequal "left" local.Object rotateYup local.TicAngle
  398.   local.TurnDirection ifstrequal "right" local.Object rotateYdown local.TicAngle
  399.  
  400.   local.YDirection ifstrequal "up" local.Object moveUp local.YDistance
  401.   local.YDirection ifstrequal "down" local.Object moveDown local.YDistance
  402.  
  403.   waitFor local.Object
  404.  
  405.   local.Counter += 1
  406.   local.Counter ifless local.TurnTics goto smoothturn_loop
  407. end // smoothturn_thread
  408.  
  409. //---------------------------------------------------------------------------
  410. // Returns a number with the specified Significant digits
  411. //---------------------------------------------------------------------------
  412. SigDigits:
  413.   local.OrigFloat = parm.OrigFloat
  414.   local.NumDigits = parm.NumDigits
  415.  
  416.   local.NewFloat string ""
  417.   local.NewFloat appendint local.OrigFloat
  418.   local.NumDigits ifgreater 0 local.NewFloat append "."
  419.  
  420.   local.OnDigit = 0
  421.   local.DigitPlace = 1
  422.  
  423. GetDigit:
  424.   local.OnDigit ifequal local.NumDigits goto GotDigits
  425.   local.OnDigit += 1
  426.   local.TempVal = local.OrigFloat
  427.   local.TempVal *= local.DigitPlace
  428.   local.TempVal1 string ""
  429.   local.TempVal1 appendint local.TempVal
  430.   local.TempVal1 *= 10
  431.   local.DigitPlace *= 10
  432.   local.TempVal = local.OrigFloat
  433.   local.TempVal *= local.DigitPlace
  434.   local.TempVal2 string ""
  435.   local.TempVal2 appendint local.TempVal
  436.   local.TempVal2 -= local.TempVal1
  437.   local.NewFloat appendint local.TempVal2
  438.   goto GetDigit
  439.  
  440. GotDigits:
  441.   parm.NewFloat string local.NewFloat
  442. end
  443.  
  444. // ------------------------------------------
  445. // Sound Precache Section
  446. // ------------------------------------------
  447. precache:
  448. // Mission Computer sounds
  449.   cachesound "mission_comp/update.wav"
  450.   cachesound "mission_comp/mix1ima.wav"
  451.   cachesound "mission_comp/mix3ima.wav"
  452.   cachesound "mission_comp/secret.wav"
  453. // JC dialog
  454.   cachesound "dialog/general/jc/cmn2.wav"
  455.   cachesound "dialog/general/jc/bldtlk.wav"
  456.   cachesound "dialog/general/jc/blddw2.wav"
  457.   cachesound "dialog/chem/jc/havoc.wav"
  458.   cachesound "dialog/basehq/jc/smokin.wav"
  459.   cachesound "dialog/basehq/jc/badass.WAV"
  460.   cachesound "dialog/geotherm/jc/Tear.wav"
  461.   cachesound "dialog/hdocks/jc/50cc.wav"
  462.   cachesound "dialog/hdocks/jc/trash.wav"
  463.   cachesound "dialog/general/jc/whatdo.wav"
  464.   cachesound "dialog/general/jc/friend1.wav"
  465.   cachesound "dialog/general/jc/psycho.wav"
  466.   cachesound "dialog/general/jc/blind.wav"
  467. // Blade dialog
  468.   cachesound "dialog/general/blade/noreas.wav"
  469.   cachesound "dialog/general/blade/nlck.wav"
  470.   cachesound "dialog/general/blade/Alright.wav"
  471.   cachesound "dialog/general/blade/Papa.wav"
  472.   cachesound "dialog/general/blade/Score.wav"
  473.   cachesound "dialog/general/jc/Paydirt.wav"
  474.   cachesound "dialog/general/jc/jackpot.wav"
  475.   cachesound "dialog/abandoned/blade/ohsht1.wav"
  476.   cachesound "dialog/biomech/blade/fubar.wav"
  477.   cachesound "dialog/intro/blade/whtth2.wav"
  478.   cachesound "dialog/basehq/blade/bringon.wav"
  479.   cachesound "dialog/hdocks/blade/demolit.wav"
  480.   cachesound "dialog/bank/blade/hmm.wav"
  481.   cachesound "dialog/geotherm/blade/whatthat.wav"
  482. end
  483.  
  484. // ------------------------------------------
  485. // End of File
  486. // ------------------------------------------
  487.